Location-based services continue to be integrated into countless applications for mobile computing devices. Accordingly, to provide helpful services, the location of the computing device must be accurately determined. Trilateration is a method of determining a relative or geodetic location of a computing device relative to multiple reference points with known locations. For example, a computing device can attempt to determine its location using trilateration methods given its relative distances to various reference points in the area. Oftentimes, the computing device retrieves the locations of the reference points from an external public database or from the reference points themselves.
The existence of rogue reference points can significantly influence the accuracy of trilateral algorithms. An external database storing the location data regarding the reference points may have incorrect information due to human error or a malicious attack. For example, an adversary may “poison” the location database with false locations of reference points and/or induce the reference points themselves to provide false location advertisements. Based on this “poisoned” location data, the resultant location of the computing device will likely be erroneous.